package 算法练习;

import java.util.Scanner;

import javax.lang.model.element.Element;

/** 

* @author ：soulstones
* @version ：2019年9月15日 下午9:37:08 
* @Description：
* 
判断一个无序数组中是否存在长度为3的递增子序列。（不要求连续）
（满足O(n)的时间复杂度和O(1)的空间复杂度。）

4 6 1 3 2
false

*/
public class 递增子序列 {
	public static void main(String[] args) {
		
		Scanner scanner = new Scanner(System.in);
		String[] split = scanner.nextLine().split(" ");
		int [] arr=new int [split.length];
		for (int i = 0; i < arr.length; i++) {
			arr[i]=Integer.parseInt(split[i]);
		}
		System.out.println(increasingTriplet(arr));
	}
	
	public static boolean  increasingTriplet(int [] arr) {
		if (arr==null || arr.length<3) {
			return false;
		}
		 int first = Integer.MAX_VALUE;
	        int second = Integer.MAX_VALUE;
	        
	        //寻找最小的二元递增组
		for (int i : arr) {
			if (first>i) {
				first=i;
			}else if (first<i &&second>i) {
				second=i;
			}else if (i>second) {
				return true;
			}
		}
	        
		
		
		
		
		
		return false;
		
	}

}
